package com.entity.vo;

import com.entity.TPlanPayVoucher;
import com.entity.TPlanWriteOffDetails;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

public class Voucher_write_off_Vo implements Serializable {
    private TPlanPayVoucher tPlanPayVoucher;
    private TPlanWriteOffDetails tPlanWriteOffDetails;

    private String id;

    private Long voucherFlowNo;

    @Override
    public String toString() {
        return "Voucher_write_off_Vo{" +
                "tPlanPayVoucher=" + tPlanPayVoucher +
                ", tPlanWriteOffDetails=" + tPlanWriteOffDetails +
                ", id='" + id + '\'' +
                ", voucherFlowNo=" + voucherFlowNo +
                ", billFlowNo='" + billFlowNo + '\'' +
                ", voucherDate=" + voucherDate +
                ", officeId='" + officeId + '\'' +
                ", voucherAmount='" + voucherAmount + '\'' +
                ", payAcctName='" + payAcctName + '\'' +
                ", payAcctNo='" + payAcctNo + '\'' +
                ", voucherType=" + voucherType +
                ", voucherSmallType=" + voucherSmallType +
                ", handleDate=" + handleDate +
                ", curHandleStaff='" + curHandleStaff + '\'' +
                ", lastHandleStaff='" + lastHandleStaff + '\'' +
                ", voucherStatus=" + voucherStatus +
                ", validStatus=" + validStatus +
                ", remark='" + remark + '\'' +
                ", dealFlowNo='" + dealFlowNo + '\'' +
                ", dealType=" + dealType +
                ", sessionId='" + sessionId + '\'' +
                ", black=" + black +
                ", groupid='" + groupid + '\'' +
                ", staffno='" + staffno + '\'' +
                ", confirmtime=" + confirmtime +
                ", invoiceinfo=" + invoiceinfo +
                ", jfConfirmFlag=" + jfConfirmFlag +
                ", hdDate=" + hdDate +
                ", xzPlanFlag=" + xzPlanFlag +
                ", blackType=" + blackType +
                ", msgSource=" + msgSource +
                ", amountCheck=" + amountCheck +
                '}';
    }

    /**
     * 核销/结算/财务流水号
     */
    private String billFlowNo;
    private Date voucherDate;

    public TPlanPayVoucher gettPlanPayVoucher() {
        return tPlanPayVoucher;
    }

    public void settPlanPayVoucher(TPlanPayVoucher tPlanPayVoucher) {
        this.tPlanPayVoucher = tPlanPayVoucher;
    }

    public TPlanWriteOffDetails gettPlanWriteOffDetails() {
        return tPlanWriteOffDetails;
    }

    public void settPlanWriteOffDetails(TPlanWriteOffDetails tPlanWriteOffDetails) {
        this.tPlanWriteOffDetails = tPlanWriteOffDetails;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public Long getVoucherFlowNo() {
        return voucherFlowNo;
    }

    public void setVoucherFlowNo(Long voucherFlowNo) {
        this.voucherFlowNo = voucherFlowNo;
    }

    public String getBillFlowNo() {
        return billFlowNo;
    }

    public void setBillFlowNo(String billFlowNo) {
        this.billFlowNo = billFlowNo;
    }

    public Date getVoucherDate() {
        return voucherDate;
    }

    public void setVoucherDate(Date voucherDate) {
        this.voucherDate = voucherDate;
    }

    public String getOfficeId() {
        return officeId;
    }

    public void setOfficeId(String officeId) {
        this.officeId = officeId;
    }

    public String getPayAcctName() {
        return payAcctName;
    }

    public void setPayAcctName(String payAcctName) {
        this.payAcctName = payAcctName;
    }

    public String getPayAcctNo() {
        return payAcctNo;
    }

    public void setPayAcctNo(String payAcctNo) {
        this.payAcctNo = payAcctNo;
    }

    public Integer getVoucherType() {
        return voucherType;
    }

    public void setVoucherType(Integer voucherType) {
        this.voucherType = voucherType;
    }

    public Integer getVoucherSmallType() {
        return voucherSmallType;
    }

    public void setVoucherSmallType(Integer voucherSmallType) {
        this.voucherSmallType = voucherSmallType;
    }

    public Date getHandleDate() {
        return handleDate;
    }

    public void setHandleDate(Date handleDate) {
        this.handleDate = handleDate;
    }

    public String getCurHandleStaff() {
        return curHandleStaff;
    }

    public void setCurHandleStaff(String curHandleStaff) {
        this.curHandleStaff = curHandleStaff;
    }

    public String getLastHandleStaff() {
        return lastHandleStaff;
    }

    public void setLastHandleStaff(String lastHandleStaff) {
        this.lastHandleStaff = lastHandleStaff;
    }

    public Integer getVoucherStatus() {
        return voucherStatus;
    }

    public void setVoucherStatus(Integer voucherStatus) {
        this.voucherStatus = voucherStatus;
    }

    public Integer getValidStatus() {
        return validStatus;
    }

    public void setValidStatus(Integer validStatus) {
        this.validStatus = validStatus;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getDealFlowNo() {
        return dealFlowNo;
    }

    public void setDealFlowNo(String dealFlowNo) {
        this.dealFlowNo = dealFlowNo;
    }

    public Integer getDealType() {
        return dealType;
    }

    public void setDealType(Integer dealType) {
        this.dealType = dealType;
    }

    public String getSessionId() {
        return sessionId;
    }

    public void setSessionId(String sessionId) {
        this.sessionId = sessionId;
    }

    public Integer getBlack() {
        return black;
    }

    public void setBlack(Integer black) {
        this.black = black;
    }

    public String getGroupid() {
        return groupid;
    }

    public void setGroupid(String groupid) {
        this.groupid = groupid;
    }

    public String getStaffno() {
        return staffno;
    }

    public void setStaffno(String staffno) {
        this.staffno = staffno;
    }

    public Date getConfirmtime() {
        return confirmtime;
    }

    public void setConfirmtime(Date confirmtime) {
        this.confirmtime = confirmtime;
    }

    public Integer getInvoiceinfo() {
        return invoiceinfo;
    }

    public void setInvoiceinfo(Integer invoiceinfo) {
        this.invoiceinfo = invoiceinfo;
    }

    public Integer getJfConfirmFlag() {
        return jfConfirmFlag;
    }

    public void setJfConfirmFlag(Integer jfConfirmFlag) {
        this.jfConfirmFlag = jfConfirmFlag;
    }

    public Date getHdDate() {
        return hdDate;
    }

    public void setHdDate(Date hdDate) {
        this.hdDate = hdDate;
    }

    public Integer getXzPlanFlag() {
        return xzPlanFlag;
    }

    public void setXzPlanFlag(Integer xzPlanFlag) {
        this.xzPlanFlag = xzPlanFlag;
    }

    public Integer getBlackType() {
        return blackType;
    }

    public void setBlackType(Integer blackType) {
        this.blackType = blackType;
    }

    public Integer getMsgSource() {
        return msgSource;
    }

    public void setMsgSource(Integer msgSource) {
        this.msgSource = msgSource;
    }

    public Integer getAmountCheck() {
        return amountCheck;
    }

    public void setAmountCheck(Integer amountCheck) {
        this.amountCheck = amountCheck;
    }

    /**
     * 网点
     */
    private String officeId;

    public String getVoucherAmount() {
        return voucherAmount;
    }

    public void setVoucherAmount(String voucherAmount) {
        this.voucherAmount = voucherAmount;
    }

    /**
     * 回单金额
     */
    private String voucherAmount;

    private String payAcctName;

    private String payAcctNo;
    /**
     * 凭证分类,核销类,财务类,结算类
     */
    private Integer voucherType;

    private Integer voucherSmallType;

    private Date handleDate;

    private String curHandleStaff;

    private String lastHandleStaff;
    /**
     * 10：新建11：增强 12:匹配  13：人工制定  15：完工  17：核销中
     */
    private Integer voucherStatus;
    /**
     * 1：删除  0：正常
     */
    private Integer validStatus;

    private String remark;

    private String dealFlowNo;
    /**
     * 处理类型 0待定 1自动处理 2 人工处理 便于统计
     */
    private Integer dealType;
    /**
     * 请求流水(核销异步是会有多次请求)
     */
    private String sessionId;
    /**
     * 0:不是黑名单 1：是黑名单
     */
    private Integer black;
    /**
     * 结算流水号
     */
    private String groupid;
    /**
     * 结算操作工号
     */
    private String staffno;
    /**
     * 结算确认时间
     */
    private Date confirmtime;
    /**
     * 是否有开票信息, 0 : 无  1: 有客户名下存在的任何一张预存发票金额小于等于凭证金额的未办结预存发票  2:有预存开票信息，但不符合条件
     */
    private Integer invoiceinfo;
    /**
     * 0:未确认1：已确认
     */
    private Integer jfConfirmFlag;

    private Date hdDate;
    /**
     * 是否是小智推送过来的方案  0:无 1:有方案 2：有附件
     */
    private Integer xzPlanFlag;
    /**
     * 黑名单类型 0:未限制 1:客户投诉    (具体属性 到数据字典表中看 limit_type 的数据字典)
     */
    private Integer blackType;
    /**
     * 消息来源，具体属性见字典表
     */
    private Integer msgSource;
    /**
     * 金额核对结果，具体属性见字典表
     */
    private Integer amountCheck;
}
